package hanoi;

import aima.search.framework.HeuristicFunction;

public class HanoiHeuristicFunction implements HeuristicFunction{

	@Override
	public double getHeuristicValue(Object state) {
		HanoiEstado estado = (HanoiEstado) state;
		
		int h = HanoiEstado.NUMDISCOS;
		
		for (int altura=0; altura < HanoiEstado.NUMDISCOS; altura++)
			if (estado.getDisco(2, altura) == (HanoiEstado.NUMDISCOS - altura))
				h--;
		
		return h;
	}

}
